﻿/*
 ***************************************************************************
 * Microsoft Visual C# .NET
 * 名称：       Shpm.System.Web.Control.CheckPost
 * 类型：       服务端输入校验类
 * 功能说明：   邮政编码校验类
 * 作者：       郭晓庆
 * 创建日期：   2007/07/10
 * 修改日期     修改者      修改内容
 * 
 * 
 * ---
 ***************************************************************************
*/
using System; 
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
using System.Windows.Forms;
namespace Shpm.System.Web.Control
{
    public class CheckPost : ComAbsChecker
    {
        /** 邮政编码模式①(1234567) */
        private String pattern = "^[0-9]{6}$";

        /**
	     * 构造函数
	     * @param value 输入值
	     */
        public CheckPost(String value)
            : base(value)
        {
            
	    }

        public CheckPost(String value, Shpm.System.Validator.ComAbsMsg msg)
            : base(value, msg)
        {          
        }

	    /**
	     * 检查处理。
	     * @param value 输入值
	     * @return true:正常 / false:异常
	     */
	    protected override bool doCheck(String value){

		    // 未输入检查
            if (base.isEmpty(value))
            {
			    return true;
		    }
    		
		    if( value.IndexOf("-") == -1 ){
			    // 不存在'-'的检查
                return Regex.Matches(value, this.pattern).Count == 0 ? false : true;
		    }
    		
		    if (value.Length < 6) {
			    // 存在'-'的检查
			    return false;
		    }
    		
		    return true;
    		
	    }
    }
}
